// Package transport
// Title  			user.transport.go
// Description  	DecodeGetClusterRequest传输层
// Author  alittlexincan@163.com  2024/07/22 11:36
// Update  alittlexincan@163.com  2024/07/22 11:36
package transport

import (
	"context"
	"net/http"
	"strconv"

	"xincan.com.cn/tarot-go/internal/app/tarot/user/dto"
)

// DecodeCreateUserRequest
// Title 			DecodeCreateUserRequest
// Description 		获取传输对象
// Author      		alittlexincan@163.com         			2024/07/22 11:36
// Update  			alittlexincan@163.com         			2024/07/22 11:36
// Param			ctx				context.Context			上下文对象
// Param			r				*http.Request			请求对象
// Return			dto.CreateUserDto						传输对象
// Return			error									错误信息
func DecodeCreateUserRequest(_ context.Context, r *http.Request) (interface{}, error) {
	return &dto.CreateUserDto{
		Name:     r.FormValue("name"),
		Password: r.FormValue("password"),
		Role:     r.FormValue("role"),
		Status:   r.FormValue("status"),
		Type:     r.FormValue("type"),
	}, nil
}

// DecodeSearchUserListRequest
// Title 			DecodeSearchUserListRequest
// Description 		获取传输对象
// Author      		alittlexincan@163.com         			2024/07/22 11:36
// Update  			alittlexincan@163.com         			2024/07/22 11:36
// Param			ctx				context.Context			上下文对象
// Param			r				*http.Request			请求对象
// Return			dto.SearchUserListDto					传输对象
// Return			error									错误信息
func DecodeSearchUserListRequest(_ context.Context, r *http.Request) (interface{}, error) {
	// 单个验证: 字符串转换为数字
	id, _ := strconv.ParseInt(r.FormValue("id"), 10, 64)
	// 结构体验证: 字符串转换为数字
	return &dto.SearchUserListDto{
		Id: id,
	}, nil
}
